package net.towee.model.account;

import java.util.List;

import com.google.gwt.user.client.rpc.IsSerializable;

/**
 * Privacy rule for user profile.
 * @author  c58
 */
public interface PrivacyRule extends IsSerializable {
	/**
	 * Get rule destination object
	 * @return
	 */
	RuleDestination getDestination();
	
	/**
	 * @return list of rule items 
	 */
	List<RuleItem> getItems();
	
	/**
	 * Add rule item
	 * @param item
	 */
	void addItem(RuleItem item);
	
	/**
	 * Delete rule item
	 * @param item
	 */
	void deleteItem(RuleItem item);
	
	/**
	 * @return true if rule contain item
	 */
	boolean hasItem(RuleItem item);
}
